<template>
    <div>
        <!--
        @name:
        @description:Contriner布局容器
        @author: 皮蛋布丁
        @date: 202105-11 20:17:14
        -->
        <el-container>
            <el-header class="homeHeader">
                <div class="title">人事密函</div>
                <div>

<!--                    聊天室-->
                    <el-button icon="el-icon-bell" type="text" style="margin-right: 8px;color: black" size="normal" @click="goChart"></el-button>

                    <el-dropdown class="userInfo" @command="commandHandler">
  <span class="el-dropdown-link">
    {{user.name}}<i><img :src="user.userface" alt=""></i>
  </span>
                        <el-dropdown-menu slot="dropdown">
                            <!--                        command:点击事件-->
                            <el-dropdown-item command="userinfo">个人中心</el-dropdown-item>
                            <el-dropdown-item command="setting">设置</el-dropdown-item>
                            <el-dropdown-item command="logout" divided>注销登录</el-dropdown-item>
                        </el-dropdown-menu>
                    </el-dropdown>
                </div>
            </el-header>
            <el-container>
                <el-aside width="200px">
<!--                    <el-menu @select="menuClick">-->
<!--                    unique-opened:同一时间打开一个菜单项-->
                    <el-menu router unique-opened>
<!--                      $router.options.routes:获取index.js中的routes数组  -->
<!--                        <el-submenu index="1" v-for="(item,index) in this.$router.options.routes" v-if="!item.hidden" :key="index">-->
<!--                       routes指 script中的computed的routes-->
                        <el-submenu :index="index+''" v-for="(item,index) in routes" v-if="!item.hidden" :key="index">
                            <template slot="title">
                                <i style="color: #409eff;margin-right: 5px" :class="item.iconCls"></i>
                                <span>{{item.name}}</span>
                            </template>
                            <el-menu-item :index="child.path" v-for="(child,indexj) in item.children" :key="indexj">{{child.name}}</el-menu-item>
                        </el-submenu>
                    </el-menu>
                </el-aside>
                <el-main>
<!--                    /**
                    * @description: 面包屑：图标分隔符
                    * @date: 2021-05-17 20:23:07
                    */-->
                    <el-breadcrumb separator-class="el-icon-arrow-right" v-if="this.$router.currentRoute.path != '/home'">
                        <el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item>
                        <el-breadcrumb-item>{{this.$router.currentRoute.name}}</el-breadcrumb-item>
                    </el-breadcrumb>
                    <div class="homeWelcome" v-if="this.$router.currentRoute.path == '/home'">
                        欢迎来到人事密函！
                    </div>
                    <router-view class="homeRouterView"/>
                </el-main>
            </el-container>
        </el-container>
    </div>
</template>

<script>
    export default {
        name: "Home",
        data() {
            return {
                user: JSON.parse(window.sessionStorage.getItem("user"))
            }
        },
        computed: {
          routes() {
              //store/index.js中
              //console.log(this.$store.state.routes)
              return this.$store.state.routes;
          }
        },
        methods:{
            goChart() {
                this.$router.push("/chat");
            },
            /**
             * @description: 26行配套使用，用于路由跳转，若添加了router属性，此方法省略
             * @date: 2021-05-11 22:32:44
             */
            // menuClick(index) {
            //     this.$router.push(index);
            // },
            commandHandler(cmd) {
                if (cmd == 'logout') {
                    this.$confirm('此操作将注销登录, 是否继续?', '提示', {
                        confirmButtonText: '确定',
                        cancelButtonText: '取消',
                        type: 'warning'
                    }).then(() => {
                        this.getRequest('/logout');
                    //    清空登录数据
                        window.sessionStorage.removeItem("user")
                        //初始化store数据(注销后菜单数据清空)
                        this.$store.commit('initRoutes',[]);
                        this.$router.replace("/");
                    }).catch(() => {
                        this.$message({
                            type: 'info',
                            message: '已取消操作'
                        });
                    });
                }
            }
        }
    }
</script>

<style scoped>
    .homeRouterView {
        margin-top: 10px;
    }
    .homeHeader {
        background-color: #049eff;
        display: flex;
        /*竖直居中*/
        align-items: center;
        justify-content: space-between;
        padding: 0px 15px;
        box-sizing: border-box;
    }

    .title {
        font-size: 30px;
        font-family: 华文行楷;
        color: #ffffff;
    }
    .homeHeader .userInfo {
        cursor: pointer;
    }
    .el-dropdown-link img{
        width: 48px;
        height: 48px;
        border-radius: 24px;
        margin-left: 8px;
    }
    .el-dropdown-link{
        /*文字居中*/
        display: flex;
        align-items: center;
    }
    .homeWelcome {
        text-align: center;
        font-size: 30px;
        font-family: 华文行楷;
        color: #409eff;
        padding-top: 50px;
    }
</style>